LINGUAGGI DI PROGRAMMAZIONE: IMPLEMENTAZIONE
Prof. Cettolo
Anno Accademico 2001/2002
L'obiettivo del corso e` di fornire i fondamenti implementativi dei linguaggi di programmazione, attraverso la descrizione del software e dell'hardware richiesti per l'esecuzione di programmi.
Dopo aver introdotto il corso, i temi principali trattati saranno:
- struttura dei calcolatori
- traduzione dei linguaggi (analisi del codice sorgente e sintesi del
codice oggetto)
- tipi di dati (elementari e strutturati)
- tipi di dati astratti
- controllo della compatibilita` tra tipi
- gestione della memoria
- controllo sequenza comandi
- controllo chiamate dei sottoprogrammi
- riferimenti locali e globali
- scoping statico e dinamico
- meccanismi di trasmissione dei parametri
Se ci sara` tempo, si descriveranno anche le implementazioni di concetti avanzati dei linguaggi orientati agli oggetti quali le classi e i metodi, l'ereditarieta` e il polimorfismo.
I linguaggi presi come riferimento saranno procedurali (C e Pascal), orientati agli oggetti (C++) e funzionali (ML).
Testo di riferimento:
T.W. Pratt, M.V Zelkowitz, Programming Languages: Design and Implementation
PRENTICE HALL, III o IV (2000) edizione